package com.mask.jvm.c5_gc;

import java.util.HashSet;
import java.util.Set;

/**
 * 运行时常量池导致的内存溢出异常
 * VM Args:-XX:PermSize=6M -XX:MaxPermSize=6M -XX:+PrintGC
 * @author hx
 * @since 2022/1/2 9:56 下午
 */

public class RuntimeConstantPoolOOM {
    public static void main(String[] args) {
        Set<String> set = new HashSet<>();
        // 在short范围内足以让6MB的PermSize产生OOM
        short i = 0;
        while (true) {
            set.add(String.valueOf(i++).intern());
        }

    }
}
